***Respectability Items****
gen Resp1_BlkCarry=Q732_Q737r1
label define Resp1_BlkCarry 1 "Strong disagree" 2 "Disagree" 3 "Somewhat disagree" 4 "Neither agree nor disagree" 5 "Somewhat agree" 6 "Agree" 7 "Strongly agree"
label values Resp1_BlkCarry Resp1_BlkCarry

gen BCarry2=(Resp1_BlkCarry-1)/6

gen BCarry3=9
replace BCarry3=0 if Resp1_BlkCarry<=4
replace BCarry3=1 if Resp1_BlkCarry==5
replace BCarry3=1 if Resp1_BlkCarry==6
replace BCarry3=1 if Resp1_BlkCarry==7
replace BCarry3=. if BCarry3==9
label define BCarry3 0 "Disagree" 1 "Agree", modify
label values BCarry3 BCarry3

graph bar if race==3, over(BCarry3) blabel(bar, format(%4.1f) size(small))
graph save bcarry, replace
graph use bcarry

*******************
 
gen Resp2_BlkBehave=Q732_Q737r2
label define Resp2_BlkBehave 1 "Strong disagree" 2 "Disagree" 3 "Somewhat disagree" 4 "Neither agree nor disagree" 5 "Somewhat agree" 6 "Agree" 7 "Strongly agree"
label values Resp2_BlkBehave Resp2_BlkBehave

gen BBehave2=(Resp2_BlkBehave-1)/6

gen BBehave3=9
replace BBehave3=0 if Resp2_BlkBehave<=4
replace BBehave3=1 if Resp2_BlkBehave==5
replace BBehave3=1 if Resp2_BlkBehave==6
replace BBehave3=1 if Resp2_BlkBehave==7
replace BBehave3=. if BBehave3==9
label define BBehave3 0 "Disagree" 1 "Agree", modify
label values BBehave3 BBehave3

graph bar if race==3, over(BBehave3)blabel(bar, format(%4.1f) size(small))
graph save bbehave
graph use bbehave

*********************
gen Resp3_BlkBehave2=Q732_Q737r3
label define Resp3_BlkBehave2 1 "Strong disagree" 2 "Disagree" 3 "Somewhat disagree" 4 "Neither agree nor disagree" 5 "Somewhat agree" 6 "Agree" 7 "Strongly agree"
label values Resp3_BlkBehave2 Resp3_BlkBehave2

gen BBehave22=(Resp3_BlkBehave2-1)/6

gen BEvery=9
replace BEvery=0 if Resp3_BlkBehave2<=4
replace BEvery=1 if Resp3_BlkBehave2==5
replace BEvery=1 if Resp3_BlkBehave2==6
replace BEvery=1 if Resp3_BlkBehave2==7
replace BEvery=. if BEvery==9
label define BEvery 0 "Disagree" 1 "Agree", modify
label values BEvery BEvery

graph bar if race==3, over(BEvery)blabel(bar, format(%4.1f) size(small))
graph save bevery, replace
graph use bevery

graph combine bcarry bbehave graph2

***********************
gen Resp4_BlkImage=Q732_Q737r4
label define Resp4_BlkImage 1 "Strong disagree" 2 "Disagree" 3 "Somewhat disagree" 4 "Neither agree nor disagree" 5 "Somewhat agree" 6 "Agree" 7 "Strongly agree"
label values Resp4_BlkImage Resp4_BlkImage

gen BImage=(Resp4_BlkImage-1)/6

gen bimage=9
replace bimage=0 if Resp4_BlkImage<=4
replace bimage=1 if Resp4_BlkImage==5
replace bimage=1 if Resp4_BlkImage==6
replace bimage=1 if Resp4_BlkImage==7
replace bimage=. if bimage==9
label define bimage 0 "Disagree" 1 "Agree", modify
label values bimage bimage

graph bar if race==3, over(bimage)blabel(bar, format(%4.1f) size(small))
graph save bimage, replace
graph use bimage

graph combine bcarry bbehave
graph combine bcarry bbehave graph2 bimage
************************
gen Resp5_BlkPublic=Q732_Q737r5
label define Resp5_BlkPublic 1 "Strong disagree" 2 "Disagree" 3 "Somewhat disagree" 4 "Neither agree nor disagree" 5 "Somewhat agree" 6 "Agree" 7 "Strongly agree"
label values Resp5_BlkPublic Resp5_BlkPublic

gen BPublic=(Resp5_BlkPublic-1)/6

gen bpublic=9
replace bpublic=0 if Resp5_BlkPublic<=4
replace bpublic=1 if Resp5_BlkPublic==5
replace bpublic=1 if Resp5_BlkPublic==6
replace bpublic=1 if Resp5_BlkPublic==7
replace bpublic=. if bpublic==9
label define bpublic 0 "Disagree" 1 "Agree"
label values bpublic bpublic

graph bar if race==3, over(bpublic)blabel(bar, format(%4.1f) size(small))
graph save bpublic, replace
graph use bpublic


graph combine bcarry bbehave graph2 bimage bpublic

*************************
gen Resp6_BlkRespect=Q732_Q737r6
label define Resp6_BlkRespect 1 "Strong disagree" 2 "Disagree" 3 "Somewhat disagree" 4 "Neither agree nor disagree" 5 "Somewhat agree" 6 "Agree" 7 "Strongly agree"
label values Resp6_BlkRespect Resp6_BlkRespect

gen BRespect=(Resp6_BlkRespect-1)/6

gen brespect=9
replace brespect=0 if Resp6_BlkRespect<=4
replace brespect=1 if Resp6_BlkRespect==5
replace brespect=1 if Resp6_BlkRespect==6
replace brespect=1 if Resp6_BlkRespect==7
replace brespect=. if brespect==9
label define brespect 0 "Disagree" 1 "Agree"
label values brespect brespect 

graph bar if race==3, over(brespect)blabel(bar, format(%4.1f) size(small))
graph save brespect, replace
graph use brespect


graph combine bcarry bbehave graph2 bimage bpublic brespect


***Correlations between Respectability Items***
corr Resp1_BlkCarry Resp2_BlkBehave Resp3_BlkBehave2 Resp4_BlkImage Resp5_BlkPublic Resp6_BlkRespect Resp7_BlkNegAss Resp8_BlkPunish Resp9_BlkPerform
corr Resp2_BlkBehave Resp3_BlkBehave2 Resp4_BlkImage Resp5_BlkPublic Resp6_BlkRespect Resp7_BlkNegAss Resp8_BlkPunish Resp9_BlkPerform

corr BCarry2 BBehave2 BBehave22 BImage BPublic BRespect BNeg BPunish BPerform

***Reliability Coefficient (Alpha)***
alpha Resp1_BlkCarry Resp2_BlkBehave Resp3_BlkBehave2 Resp4_BlkImage Resp5_BlkPublic Resp6_BlkRespect 
alpha Resp1_BlkCarry Resp2_BlkBehave Resp3_BlkBehave2 Resp4_BlkImage Resp5_BlkPublic Resp6_BlkRespect, item
alpha BCarry2 BBehave2 BBehave22 BImage BPublic BRespect
alpha BCarry2 BBehave2 BBehave22 if race==3
alpha BImage BPublic BRespect if race==3

***Exploratory Factor Analysis of Items***
factor  Resp1_BlkCarry Resp2_BlkBehave Resp3_BlkBehave2 Resp4_BlkImage Resp5_BlkPublic Resp6_BlkRespect
rotate, varimax
***Factor analysis with a varimax rotation (presumes the factors are orthogonal or uncorrelated). Hints that there may be three factors underlying the scale (733-734, 735-737, 738-740).  However, the factors that they suggest exist do not make sense conceptually.***

factor  Resp1_BlkCarry Resp2_BlkBehave Resp3_BlkBehave2 Resp4_BlkImage Resp5_BlkPublic Resp6_BlkRespect, factors (2)
screeplot
rotate, oblimin oblique

factor BCarry2 BBehave2 BBehave22 BImage BPublic BRespect, factors (2)
screeplot
rotate, oblimin oblique

***Factor analysis using an oblique rotation (presumes the factors may be correlated). Evidence is not convincing. It seems reasonable to assume the battery reflects a single factor***

factor BCarry2 BBehave2 BBehave22 BImage BPublic BRespect, factors (2)
screeplot
rotate, promax

alpha BCarry2 BBehave2 BBehave22 BImage BPublic BRespect if race==3

***Scale Construction***
egen Respectability=rmean(Resp2_BlkBehave Resp3_BlkBehave2 Resp4_BlkImage Resp5_BlkPublic Resp6_BlkRespect)
histogram Respectability if race==3

egen Respectability2=rmean(BCarry2 BBehave2 BBehave22 BImage BPublic BRespect)
histogram Respectability2 if race==3, percent
sum Respectability2

***Support for Black Lives Matter***
revrs Q358
rename revQ358 revBLMsupp

***Correlation for Concerns about Ingroup Behavior Dimension***
corr BCarry2 BBehave2 BBehave22

***Correlation for Concerns about Ingroup Behavior Dimension***
alpha BCarry2 BBehave2 BBehave22

***Scale Construction for Concerns about Ingroup Behavior Dimension***
egen IngroupBehave=rmean(BCarry2 BBehave2 BBehave22)

***Correlation for Blame for Group Status Dimension***
corr BImage BPublic BRespect BNeg BPunish BPerform

***Correlation for Blame for Group Status Dimension***
alpha BImage BPublic BRespect BNeg BPunish BPerform

***Scale Construction for Blame for Group Status Dimension***
egen GroupStatus=rmean(BImage BPublic BRespect BNeg BPunish BPerform)

***Items for Policy Preferences***

***Rating of Police***
gen policeeval=Q70r2
revrs policeeval
label define revpoliceeval 1 "Poor" 2 "Fair" 3 "Good" 4 "Very Good" 5 "Excellent"
label values revpoliceeval revpoliceeval

graph bar if race==1, over(revpoliceeval) blabel(bar, format(%4.1f) size(small))

gen revpoliceeval2=(revpoliceeval-1)/4
label define revpoliceeval2 0 "Poor" 1 "Excellent", modify
label values revpoliceeval2 revpoliceeval2
drop revpoliceeval
rename revpoliceeval2 revpoliceeval

gen defund_and_invest2=(defund_and_invest-1)/4
label define defund_and_invest2 0 "Strongly oppose" 1 "Strongly favor"
label values defund_and_invest2 defund_and_invest2
drop defund_and_invest
rename defund_and_invest2 defund_and_invest

gen defundbar=defund_and_invest
replace defundbar=0 if defund_and_invest==1
replace defundbar=0 if defund_and_invest==2
replace defundbar=1 if defund_and_invest==3
replace defundbar=2 if defund_and_invest==4
replace defundbar=2 if defund_and_invest==5
label define defundbar 0 "Oppose" 1 "Neither Favor Nor Oppose" 2 "Favor", modify
label values defundbar defundbar

gen abolishbar=abolish_police
replace abolishbar=0 if abolish_police==1
replace abolishbar=0 if abolish_police==2
replace abolishbar=1 if abolish_police==3
replace abolishbar=2 if abolish_police==4
replace abolishbar=2 if abolish_police==5
label define abolishbar 0 "Oppose" 1 "Neither Favor Nor Oppose" 2 "Favor"
label values abolishbar abolishbar

gen abolish_police2=(abolish_police-1)/4
label define abolish_police2 0 "Strongly oppose" 1 "Strongly favor", modify
label values abolish_police2 abolish_police2
drop abolish_police
rename abolish_police2 abolish_police

***Police Reform***
gen defundpol=Q385
label define defundpol 1 "Defunding policing is going too far" 7 "Defunding police is not going far enough"
label values defundpol defundpol

***Police Funding***
gen polfund=Q690
label define polfund 1 "Increase a lot" 2 "Increase a little" 3 "Stay about the same" 4 "Decrease a little" 5 "Decrease a lot"
label values polfund polfund

***Police Contact Scale***
gen policestopped_car=Q441_Q452r1
replace policestopped_car=0 if Q441_Q452r1==3
replace policestopped_car=1 if Q441_Q452r1==2
label define policestopped_car 0 "No" 1 "Yes"
label values policestopped_car policestopped_car

gen policestopped_foot=Q441_Q452r2
replace policestopped_foot=0 if Q441_Q452r2==3
replace policestopped_foot=1 if Q441_Q452r2==2
label define policestopped_foot 0 "No" 1 "Yes"
label values policestopped_foot policestopped_foot

gen police_fine=Q441_Q452r3
replace police_fine=0 if Q441_Q452r3==3
replace police_fine=1 if Q441_Q452r3==2
label define police_fine 0 "No" 1 "Yes"
label values police_fine police_fine

gen police_arrested=Q441_Q452r4
replace police_arrested=0 if Q441_Q452r4==3
replace police_arrested=1 if Q441_Q452r4==2
label define police_arrested 0 "No" 1 "Yes"
label values police_arrested police_arrested

gen police_convicted=Q441_Q452r5
replace police_convicted=0 if Q441_Q452r5==3
replace police_convicted=1 if Q441_Q452r5==2
label define police_convicted 0 "No" 1 "Yes"
label values police_convicted police_convicted

gen police_civconviction=Q441_Q452r6
replace police_civconviction=0 if Q441_Q452r6==3
replace police_civconviction=1 if Q441_Q452r6==2
label define police_civconviction 0 "No" 1 "Yes"
label values police_civconviction police_civconviction

gen police_parole=Q441_Q452r7
replace police_parole=0 if Q441_Q452r7==3
replace police_parole=1 if Q441_Q452r7==2
label define police_parole 0 "No" 1 "Yes"
label values police_parole police_parole

gen police_jail=Q441_Q452r8
replace police_jail=0 if Q441_Q452r8==3
replace police_jail=1 if Q441_Q452r8==2
label define police_jail 0 "No" 1 "Yes"
label values police_jail police_jail

alpha policestopped_car policestopped_foot police_fine police_arrested police_convicted police_civconviction police_parole police_jail
egen PoliceContact=rmean(policestopped_car policestopped_foot police_fine police_arrested police_convicted police_civconviction police_parole police_jail)

***Concern about Crime***
gen ConcernofCrime=Q117r9
label define ConcernofCrime 1 "Very Low Priority" 2 "Low Priority" 3 "High Priority" 4 "Very High Priority"
label values ConcernofCrime ConcernofCrime

gen ConcernofCrime2=(ConcernofCrime-1)/3
label define ConcernofCrime2 0 "Very Low Priority" 1 "Very High Priority"
label values ConcernofCrime2 ConcernofCrime2
drop ConcernofCrime
rename ConcernofCrime2 ConcernofCrime

***Sociodemographic Characteristics***

***Gender***
gen Woman=9
replace Woman=1 if S3b==2
replace Woman=0 if S3b==1
replace Woman=0 if S3b>=3
label define Woman 0 "Otherwise" 1 "Woman"
label values Woman Woman

gen Nonbinary=9
replace Nonbinary=1 if S3b>=3
replace Nonbinary=0 if S3b<3
label define Nonbinary 0 "Otherwise" 1 "Nonbinary"
label values Nonbinary Nonbinary

***Age Categories***
gen age=S5_Age-1
label define age 1 "18-29" 2 "30-39" 3 "40-49" 4 "50-59" 5 "60-69" 6 "70 plus"
label values age age

gen age2=(age-1)/5
label define age2 0 "18-29" 1 "70 plus", modify
label values age2 age2
drop age
rename age2 age

***Foreign Born***
gen forborn=9
replace forborn=0 if S7==1
replace forborn=0 if S7==3
replace forborn=1 if S7==2
replace forborn=. if forborn==9

***Educational Attainment***
gen education=S13
label define education 1 "Grades 1-8" 2 "Some high school" 3 "High school graduate or GED" 4 "Some college" 5 "Associates, 2-year degree" 6 "Bachelors, 4-year degree" 7 "Post-graduate degree"
label values education education

gen education2=(education-1)/6
label define education2 0 "Grades 1-8" 1 "Post-graduate degree"
label values education2 education2
drop education
rename education2 education

***Party Attachment***
gen Democrat=9
replace Democrat=0 if Q21==1
replace Democrat=0 if Q21==3
replace Democrat=0 if Q21==4
replace Democrat=1 if Q21==2
label define Democrat 0 "Otherwise" 1 "Democrat"
label values Democrat Democrat

gen Republican=9
replace Republican=1 if Q21==1
replace Republican=0 if Q21==2
replace Republican=0 if Q21==3
replace Republican=0 if Q21==4
label define Republican 0 "Otherwise" 1 "Republican"
label values Republican Republican

***Political Ideology***
gen ideology=9
replace ideology=1 if Q43==5
replace ideology=2 if Q43==4
replace ideology=3 if Q43==3
replace ideology=3 if Q43==6
replace ideology=4 if Q43==2
replace ideology=5 if Q43==1
label define ideology 1 "Very Conservative" 2 "Somewhat Conservative" 3 "Moderate" 4 "Somewhat Liberal" 5 "Very Liberal"
label values ideology ideology

gen ideology2=(ideology-1)/4
label define ideology2 0 "Very conservative" 1 "Very liberal"
label values ideology2 ideology2
drop ideology
rename ideology2 ideology

rename ideology ideology_lib

gen ideology_cons=9
replace ideology_cons=1 if Q43==1
replace ideology_cons=2 if Q43==2
replace ideology_cons=3 if Q43==3
replace ideology_cons=3 if Q43==6
replace ideology_cons=4 if Q43==4
replace ideology_cons=5 if Q43==5
label define ideology_cons 1 "Very Liberale" 2 "Somewhat Liberal" 3 "Moderate" 4 "Somewhat Conservative" 5 "Very Conservative"
label values ideology_cons ideology_cons

gen ideology_cons2= (ideology_cons-1)/4
label define ideology_cons2 0 "Very Liberal" 1 "Very Conservative"
label values ideology_cons2 ideology_cons2

***Income***
gen income=Q813
replace income =. if Q813==99
label define income 1 "Less than $20,000" 2 "$20,000 to $29,999" 3 "$30,000 to $39,999" 4 "$40,000 to $49,999" 5 "$50,000 to $59,999" 6 "$60,000 to $69,999" 7 "$70,000 to $79,999" 8 "$80,000 to $89,999" 9 "$90,000 to $99,999" 10 "$100,000 to $149,999" 11 "$150,000 to $199,999" 12 "$200,000 or more"
label values income income

gen Below50K=9
replace Below50K=1 if Q813<=4
replace Below50K=0 if Q813>=5
label define Below50K 0 "Otherwise" 1 "Below $50,000"
label values Below50K Below50K

gen FiftyKtoHundredK=9
replace FiftyKtoHundredK=0 if Q813<=4
replace FiftyKtoHundredK=1 if Q813==5
replace FiftyKtoHundredK=1 if Q813==6
replace FiftyKtoHundredK=1 if Q813==7
replace FiftyKtoHundredK=1 if Q813==8
replace FiftyKtoHundredK=1 if Q813==9
replace FiftyKtoHundredK=0 if Q813>=10
label define FiftyKtoHundredK 0 "Otherwise" 1 "$50,000 to $99,999"
label values FiftyKtoHundredK FiftyKtoHundredK

gen Above100K=9
replace Above100K=0 if Q813<=9
replace Above100K=0 if Q813==99
replace Above100K=1 if Q813==10
replace Above100K=1 if Q813==11
replace Above100K=1 if Q813==12
label define Above100K 0 "Otherwise" 1 "Above $100,000"
label values Above100K Above100K

gen inc_noanswer=9
replace inc_noanswer=1 if Q813==99
replace inc_noanswer=0 if Q813<99
label define inc_noanswer 0 "Otherwise" 1 "No answer"
label values inc_noanswer inc_noanswer

gen South=9
replace South=1 if S4==2
replace South=1 if S4==4
replace South=1 if S4==8
replace South=1 if S4==9
replace South=1 if S4==10
replace South=1 if S4==11
replace South=1 if S4==18
replace South=1 if S4==19
replace South=1 if S4==21
replace South=1 if S4==25
replace South=1 if S4==34
replace South=1 if S4==37
replace South=1 if S4==41
replace South=1 if S4==43
replace South=1 if S4==44
replace South=1 if S4==47
replace South=1 if S4==49
replace South=0 if South==9


AL=2
AR=4
DE=8
D.C.=9
FL=10
GA=11
KY=18
LA=19
MD=21
MS=25
NC=34
OK=37
SC=41
TN=43
TX=44
VA=47
WV=49

***Importance of Religion***
gen religimport=9
replace religimport=1 if Q425==1
replace religimport=1 if Q425==2
replace religimport=0 if Q425>=3
label define religimport 0 "Otherwise" 1 "Somewhat or Very Important"
label values religimport religimport

gen relimport_DK=9
replace relimport_DK=0 if Q425<=4
replace relimport_DK=0 if Q425==6
replace relimport_DK=1 if Q425==5
label define relimport_DK 0 "Otherwise" 1 "Don't Know'"
label values relimport_DK relimport_DK

gen relimport_refuse=9
replace relimport_refuse=0 if Q425<=5
replace relimport_refuse=1 if Q425==6
label define relimport_refuse 0 "Otherwise" 1 "Refuse'"
label values relimport_refuse relimport_refuse

***Black Linked Fate***
gen Blklfate=Q551_Q559r1
label define Blklfate 1 "Nothing" 2 "Only a little" 3 "Something" 4 "A lot" 5 "A huge amount"
label values Blklfate Blklfate

gen Blklfate2=(Blklfate-1)/4
label define Blklfate2 0 "Nothing" 1 "A huge amount"
label values Blklfate2 Blklfate2
drop Blklfate
rename Blklfate2 Blklfate

***Model of Respectability***
reg Respectability religimport relimport_DK relimport_refuse Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology South if race==3
coefplot, keep(religimport Woman Nonbinary age forborn Below50K FiftyKtoHundredK education Democrat Republican ideology South) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)

reg Respectability2 religimport relimport_DK relimport_refuse Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology South if race==3
coefplot, keep(religimport Woman Nonbinary age forborn Below50K FiftyKtoHundredK education Democrat Republican ideology South) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)

reg Respectability2 religimport relimport_DK relimport_refuse Blklfate Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology South if race==3
coefplot, keep(religimport Blklfate Woman Nonbinary age forborn Below50K FiftyKtoHundredK education Democrat Republican ideology South) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)


***Model of Police Ratings***
ologit revpoliceeval Respectability Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education) xline(0) mlabel format(%9.2g) mlabposition(22) mlabgap(*2)
"PolRate"

ologit revpoliceeval Respectability2 Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education) xline(0) mlabel format(%9.2g) mlabposition(22) mlabgap(*2)
"PolRate2"

***Without Linked Fate***
ologit revpoliceeval Respectability PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology South if race==3


***Margins plot of Police Ratings across levels of Respectability***
quietly ologit revpoliceeval i.Respectability_rrr Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
quietly margins, at(Respectability_rrr = (1000(1000)7000))
marginsplot

quietly reg revpoliceeval i.Respectability_rrr Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
quietly margins, at(Respectability_rrr = (1000(1000)7000))
marginsplot

ologit revpoliceeval Respectability Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)
"PolRate"

ologit defundpol Respectability Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)
"PolFund"

ologit defundpol Respectability2 Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)
"PolFund2"

ologit polfund Respectability Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology_cons2 if race==3
coefplot, drop(_cons Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)
"Defund"

ologit polfund Respectability2 Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)
"Defund2"

graph combine "PolRate" "PolFund" "Defund", iscale(.3) col(3)

graph combine "PolRate2" "PolFund2" "Defund2", iscale(1.0) col(3)

quietly eststo PolRate: ologit revpoliceeval Respectability PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
quietly eststo Polfund: ologit polfund Respectability Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
quietly eststo DefundPol: ologit defundpol Respectability Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot PolRate, bylabel(Police Rating) || DefundPol, bylabel(Decrease Funds) || Polfund, bylabel(Defunding Police Not Far Enough) ||, keep(Respectability Blklfate PoliceContact ConcernofCrime Democrat Republican ideology) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)

ologit revpoliceeval IngroupBehave GroupStatus Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
ologit polfund IngroupBehave GroupStatus Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
ologit defundpol IngroupBehave GroupStatus Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3



*reverse code questions 706-708. police abolition, raclibration and defunding police and investing in communities
revrs Q706_Q708r1 Q706_Q708r2 Q706_Q708r3


*rename the variables from questions 706-708
rename revQ706_Q708r1 defund_and_invest
rename revQ706_Q708r2 abolish_police
rename revQ706_Q708r3 police_recalibration


ologit revpoliceeval Respectability2 Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education) xline(0) mlabel format(%9.2g) mlabposition(22) mlabgap(*2)
"PolRate2"
graph save PolRate

ologit revpoliceeval Respectability2 Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education ideology if race==3 & Democrat==1

ologit revpoliceeval Respectability2 Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education ideology if race==3 & Republican==1

ologit defund_and_invest Respectability2 Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)
graph save Defund

ologit abolish_police Respectability2 Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)
graph save Abolish

graph combine "PolRate" "Defund" "Abolish_Police", iscale(.5) rows(3)

ologit defund_and_invest IngroupBehave GroupStatus Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3

ologit abolish_police Respectability2 Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons South nonbinary forborn Below50K FiftyKtoHundredK inc_noanswer) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)

ologit abolish_police IngroupBehave GroupStatus Blklfate PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3

ologit police_recalibration Respectability2 Blklfate South PoliceContact ConcernofCrime Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3
coefplot, drop(_cons South nonbinary forborn Below50K FiftyKtoHundredK inc_noanswer) xline(0) mlabel format(%9.2g) mlabposition(12) mlabgap(*2)


rename Q619_Q626r2 discrimination_against_Blk
revrs discrimination_against_Blk
ologit revdiscrimination_against_Blk Respectability2 Blklfate South Woman Nonbinary age forborn Below50K FiftyKtoHundredK inc_noanswer education Democrat Republican ideology if race==3

graph bar if race==3, over(defundbar) blabel(bar, format(%4.1f) size(small))

graph bar if race==3, over(abolishbar) blabel(bar, format(%4.1f) size(small))
graph save "Graph" "/Users/tonycareyjr/Library/CloudStorage/Dropbox/Research Projects/Respectability Politics Article/Defund Pol
> ice Bar Graph.gph", replace

graph bar if race==3, over(revpoliceeval) blabel(bar, format(%4.1f) size(small))
